import Vue from 'vue'
import App from './App.vue'
// 全局注册vant
import Vant from 'vant'
import axios from "axios";
import router from './router';
import Vuex from 'vuex'
import "@/assets/font/text.scss";
import VueClipboard from 'vue-clipboard2' //引入插件
import { ImagePreview } from 'vant';
// 全局注册
Vue.use(ImagePreview);
Vue.use(VueClipboard) //安装插件
Vue.use(Vuex);
import {
  Toast
} from 'vant'

import throttle from '@/utils/debounce.js'
//全局防抖、节流函数
Vue.prototype.$throttle = throttle;
// 全局注册
import {
  Dialog
} from 'vant';
import QRCode from "qrcode"
Vue.use(QRCode);
// 挂载后台数据
if (process.env.NODE_ENV === "development") {
  Vue.prototype.$Img = 'https://www.tunquanquan.com/CloudPhoneMain/v1/store/publics/loadImageWithPath?path='; // 图片展示
  Vue.prototype.$Li = 'https://api.cd1a.cn/';
  Vue.prototype.$leitai = 'http://s.cd1a.cn/public/index.php/';
  Vue.prototype.$Tweet = 'https://test1.tiantianchuxing.cn/';
  Vue.prototype.$Upload = 'http://imageupload.tiantianchuxing.cn/';
  Vue.prototype.$Sign = 'http://payment.tiantianchuxing.cn/';
  
} else {
  Vue.prototype.$Img = 'https://www.tunquanquan.com/CloudPhoneMain/v1/store/publics/loadImageWithPath?path='; // 图片展示
  Vue.prototype.$leitai = 'https://adminapi.cd1a.cn/public/index.php/';
  Vue.prototype.$Li = 'https://api.cd1a.cn/';
  Vue.prototype.$Tweet = 'https://zhongtai.tiantianchuxing.cn/';
  Vue.prototype.$Upload = 'http://imageupload.tiantianchuxing.cn/';
  Vue.prototype.$Sign = 'http://payment.tiantianchuxing.cn/';
}
Vue.prototype.$http = axios;
Vue.prototype.$Toast = Toast
Vue.prototype.$Dialog = Dialog;
import "lib-flexible";
import 'vant/lib/index.css'
import 'amfe-flexible'
// 使用vuex
const store = new Vuex.Store({
  // 全局状态
  state: {
    count: 0
  },
  // getters是对数据的包装，例如对数据进行拼接，或者过滤
  getters: {
    //类似于计算属性
    myCount(state) {
      return `current count is ${state.count}`
    }
  },
  // 如果我们需要更改store中的状态，一定要通过mutations来进行操作
  mutations: {
    // 增加的方法
    increment(state) {
      state.count += 1
    },
    // 减少的方法
    decrement(state) {
      state.count -= 1
    }
  },
  // actions是我们定义的一些操作，正常情况下，我们很少会直接调用mutation方法来改变state
  actions: {
    // 编写业务代码
    myIncrement: function (context) {
      // 进行一系列的操作，比如从后台取数据等
      context.commit('increment');
    },
    myDecrement: function (context) {
      // 进行一系列的操作，比如从后台取数据等
      context.commit("decrement");
    }
  }
})

// 引入vant样式
// 注册使用
Vue.use(Vant)
router.beforeEach((to, from, next) => {
  /* 路由发生变化修改页面title */
  if (to.meta.title == '客服服务') {
    document.title = '';
  } else {
    document.title = to.meta.title;
  }
  next();
});

Vue.config.productionTip = false

new Vue({
  router,
  store,
  render: h => h(App),
}).$mount('#app')